package com.lhkj.ct.base.exception;


import com.lhkj.ct.base.enums.ReturnStatus;

/**
 * 参数校验异常
 */
public class ValidatedException extends RuntimeException {

    private static final long serialVersionUID = 1L;

    /**
     * 错误代码
     */
    private ReturnStatus stateCode;

    /**
     * 构造一个基本异常.
     *
     * @param message 信息描述
     */
    public ValidatedException(String message) {
        super(message);
    }

    /**
     * 构造一个基本异常.
     *
     * @param code    错误编码
     * @param message 信息描述
     */
    public ValidatedException(ReturnStatus code, String message) {
        super(message);
        this.setStateCode(code);
    }

    /**
     * 构造一个基本异常.
     *
     * @param message 信息描述
     * @param cause   根异常类（可以存入任何异常）
     */
    public ValidatedException(String message, Throwable cause) {
        super(message, cause);
    }

    public ReturnStatus getStateCode() {
        return stateCode;
    }

    public void setStateCode(ReturnStatus stateCode) {
        this.stateCode = stateCode;
    }
}
